// Copyright (c) MatrixFramework. All rights reserved.
// Licensed under the MIT License. See LICENSE in the project root for license information.

using System;

namespace PhotoGalleryService.Photos;

/// <summary>
/// 照片下载数据传输对象
/// </summary>
public class PhotoDownloadDto
{
    /// <summary>
    /// 照片ID
    /// </summary>
    public Guid Id { get; set; }

    /// <summary>
    /// 文件名
    /// </summary>
    public string FileName { get; set; } = string.Empty;

    /// <summary>
    /// MIME类型（兼容性属性）
    /// </summary>
    public string MimeType { get; set; } = string.Empty;

    /// <summary>
    /// 内容类型（与MimeType相同，用于兼容）
    /// </summary>
    public string ContentType { get; set; } = string.Empty;

    /// <summary>
    /// 文件内容
    /// </summary>
    public byte[] Content { get; set; } = Array.Empty<byte>();

    /// <summary>
    /// 文件大小
    /// </summary>
    public long FileSize { get; set; }

    /// <summary>
    /// 最后修改时间
    /// </summary>
    public DateTime? LastModified { get; set; }

    /// <summary>
    /// ETag（用于缓存控制）
    /// </summary>
    public string? ETag { get; set; }
}